home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Magazine Extra 1998 Summer: The Perfect PC
/
PC Magazine Extra - The Perfect PC - Summer 1998 Vol 6 #2.iso
/
zdbench
/
wb98
/
data.z
/
WBGDI.exe
/
RCDATA
/
T
< prev
Wrap
Text File
|
1997-10-28
|
23KB
|
821 lines
// Copyright (c) 1993-1995 by Ziff-Davis Publishing Company, L.P. All rights reserved.
// This is highly confidential information, proprietary to Ziff-Davis Publishing
// Company. If you are not a member of the WinBench development team at
// Ziff-Davis Benchmark Operation or a member of the WinBench Advisory Committee
// put it down now, and contact Dave Morey at (919) 380-2895.
// This file may be larger that 64 KB.
// However, the squeezed version must be less than 32 KB or it will
// not be encrypted by secure.c and wbcrypt.dll.
// Distribution functions:
// MinAveMax(min,ave,max,buckets) two uniform distributions on either side of ave
// Uniform(min,max,buckets) ave = (min+max)/2
// Binomial(min,ave,max,buckets)
// Empirical(value/frequency,...)
Group ""
// Defaults
DAlign Empirical(1/1)
SAlign Empirical(1/1)
Align Empirical(1/1)
Clock Empirical(0/1,1/1)
// ROP codes: 0=BLACKNESS, 17=NOTSRCERASE, 51=NOTSRCCOPY, 68=SRCERASE,
// 85=DESTINVERT, 90=PATINVERT, 102=SRCINVERT, 136=SRCAND,
// 187=MERGEPAINT, 192=MERGECOPY, 204=SRCCOPY, 238=SRCPAINT,
// 240=PATCOPY, 251=PATPAINT, 255=WHITENESS
// Average string length from CPC and TOC:
// 75879303/6943803 = 10.9 characters/operation
Length MinAveMax(1,10.9,30,50)
// 0=RGB(ff,ff,ff)
// 1=RGB(c0,c0,c0)
// 2=RGB(80,80,80)
// 3=RGB(00,00,00)
// 4=RGB(ff,00,00)
// 5=RGB(00,ff,00)
// 6=RGB(00,00,ff)
// 7=RGB(ff,ff,00)
// 8=RGB(ff,00,ff)
// 9=RGB(00,ff,ff)
// 10=RGB(80,00,00)
// 11=RGB(00,80,00)
// 12=RGB(00,00,80)
// 13=RGB(80,80,00)
// 14=RGB(80,00,80)
// 15=RGB(00,00,80)
// 16=Random RGB Value
// Data from CTF
PenColor Empirical(0/49542,1/13005,2/40631,3/52095,4/114,8/24,12/168,16/7355)
BrushColor Empirical(0/93041,1/50124,2/1069,3/6207,4/8,5/11,6/31,7/30,8/1,9/112,12/15960,14/286,15/361,16/22474)
TextColor Empirical(0/5030,1/810,2/370,3/43488,4/199,5/18,6/101,7/4,8/4,11/1,12/2,16/4765)
BkColor Empirical(0/42129,1/11923,2/1,3/134,5/18,6/32,12/2000,16/77)
Color Empirical(16/1) // for SetPixel
// Total from PF / SelectObject(Pen) from SF
ChangePen 254
// Total from BF / SelectObject(Brush) from SF
ChangeBrush 1006
// (Total from PF + Total from BF) / SetBkColor from SF
// WinBench treats every Pen/Brush as having a background
ChangeBkColor 2194
// (Total from PF + Total from BF) / SetBkMode from SF
ChangeBkMode 5234
// Total from TBKF / SetTextColor from SF
ChangeTextColor 1145
// Abritrary -- used only by SetPixel, no data from logger
// will change color every 50 SetPixels
ChangeColor 50
// Total from STF / SetStretchBltMode from SF
ChangeStrMode 114
// Total from PMF / SetPolyFillMode from SF
ChangePolyMode 954
// Total from R2F / SetROP2 from SF
ChangeROP2 15162
// 2=Dot(w=0)
// 18=Dot(w=1)
// 0=solid(w=0)
// 16=solid(w=1)
// 6=inside(w=0)
// 22=inside(w=1)
// 38=inside(w=2)
// Data from PF
// substitute solid for null since pen GDIOPs fail with null
Pen Empirical(2/1,18/1,0/473,16/1051,6/1,22/102,0/3434)
// 0=solid
// 2=hatch(horiz)
// 18=hatch(vert)
// 34=hatch(fdiag)
// 50=hatch(bdiag)
// 66=hatch(cross)
// 82=hatch(diagcross)
// 19=bitmap(mono)
// 21=DIB(mono)
// 3=bitmap(color)
// 5=DIB(color)
// substitute solid for null since brush GDIOP fail with null
// split pattern into DIB and bitmap evenly
// Data from BF
Brush Empirical(19/6,21/6,3/8,5/7,0/1897,0/90)
// 1=TRANSPARENT
// 2=OPAQUE
// Data from BKF
BkMode Empirical(1/449,2/572)
// 1=BLACKONWHITE
// 3=COLORONCOLOR
// Data from STF
StrMode Empirical(1/460,3/353)
// 1=ALTERNATE
// 2=WINDING
// Data from PMF
PolyMode Empirical(1/1002,2/4)
// 6=NOT
// 7=XORPEN
// 9=MASKPEN
// 10=NOTXORPEN
// 12=MERGENOTPEN
// 13=COPYPEN
// Data from R2F
ROP2Mode Empirical(6/6,7/696,10/1139,13/448477)
Group "" // Non-profiled tests
Group "" // Drawing Surface is Screen
Surface Screen
ChangePen 263
ChangeBrush 993
ChangeBkColor 2813
ChangeBkMode 5388
ChangeTextColor 1355
ChangeColor 50
ChangeStrMode 274
ChangePolyMode 333
ChangeROP2 13933
Pen Empirical(2/1,16/1,0/408,16/953,6/2,22/82,0/3058)
Brush Empirical(19/5,21/6,3/7,5/7,0/1829,0/85)
BkMode Empirical(1/357,2/545)
StrMode Empirical(1/317,3/348)
PolyMode Empirical(1/331,2/4)
ROP2Mode Empirical(6/6,7/696,10/1139,13/397083)
Group "GDI"
Group "S"
Group ""
Height MinAveMax(10,75,115,50)
Width MinAveMax(10,75,150,30)
Angle Uniform(10,350,30)
Count 300
Test "Arc, Circular, Partial"
Func GDIArcTest
DBase 1 None
Height =Width
End
Test "Arc, Elliptical, Partial"
Func GDIArcTest
DBase 2 None
End
Test "Arc, Circular, Complete"
Func GDIArcTest
DBase 3 None
Height =Width
Angle Empirical(360/1)
End
Test "Arc, Elliptical, Complete"
Func GDIArcTest
DBase 4 None
Angle Empirical(360/1)
End
End
Group ""
Area MinAveMax(1000,5000,10000,50)
Height MinAveMax(50,75,100,20)
Angle Uniform(0,359,30)
Count 300
Test "Chord, Circular"
Func GDIChordTest
DBase 5 None
Height =Width
End
Test "Chord, Elliptical"
Func GDIChordTest
DBase 6 None
End
Test "Circle"
Func GDIEllipseTest
DBase 7 None
Height =Width
End
Test "Ellipse"
Func GDIEllipseTest
DBase 8 None
End
Test "Pie, Circular"
Func GDIPieTest
DBase 9 None
Height =Width
End
Test "Pie, Elliptical"
Func GDIPieTest
DBase 10 None
Height Uniform(10,150,20)
End
End
Group ""
Length MinAveMax(5,75,115,20)
Count 1000
Test "Line, Horizontal"
Func GDILineFromToTest
DBase 11 None
Angle Empirical(0/1,180/1)
End
Test "Line, Vertical"
Func GDILineFromToTest
DBase 12 None
Angle Empirical(90/1,270/1)
End
Test "Line, Diagonal"
Func GDILineFromToTest
DBase 13 None
Angle Uniform(0,359,360)
End
End
Group ""
Area MinAveMax(1000,5000,10000,50)
Height MinAveMax(50,75,100,20)
HPercent .333
VPercent .333
DPercent .334
Test "Polygon, Many-sides"
Func GDIPolygonTest
DBase 14 None
Count 150
Sides MinAveMax(17,50,100,20)
End
Test "Polygon, Few-sides"
Func GDIPolygonTest
DBase 15 None
Count 150
Sides Uniform(5,16,12)
End
Test "Polygon, Triangle"
Func GDIPolygonTest
DBase 16 None
Count 450
Sides Empirical(3/1)
HPercent .14
VPercent .14
DPercent .72
End
Test "Polygon, Trapezoid"
Func GDIPolygonTest
DBase 17 None
Count 450
Sides Empirical(4/1)
End
End
Group ""
Area MinAveMax(1000,5000,10000,50)
Height MinAveMax(50,75,100,20)
Count 256
Test "InvertRgn"
Func GDIInvertRgnTest
DBase 18 None
End
Test "PaintRgn"
Func GDIPaintRgnTest
DBase 19 None
End
Test "FillRgn"
Func GDIFillRgnTest
DBase 20 None
End
Test "PatBlt, PATCOPY"
Func GDIPatBltTest
DBase 21 None
ROP Empirical(240/1)
End
Test "PatBlt, WHITENESS"
Func GDIPatBltTest
DBase 22 None
ROP Empirical(255/1)
End
Test "PatBlt, DESTINVERT"
Func GDIPatBltTest
DBase 23 None
ROP Empirical(85/1)
End
Test "PatBlt, All ROPs"
Func GDIPatBltTest
DBase 24 None
ROP Empirical(0/1,5/1,10/1,15/1,80/1,85/1,90/1,95/1,160/1,165/1,170/1,175/1,240/1,245/1,250/1,255/1)
End
End
Group ""
Height MinAveMax(10,75,115,50)
Width MinAveMax(10,75,150,30)
Count 250
Test "FrameRgn"
Func GDIFrameRgnTest
DBase 25 None
Border MinAveMax(1,3,10,10)
End
End
Group ""
Count 200
Font Times-New-Roman(16)
Test "Text, Times Roman 16"
Func GDIExtTextOutTest
DBase 26 None
End
Test "Text, Times Roman 16, 45"
Func GDIExtTextOutTest
DBase 27 None
Font Times-New-Roman(16,0,450,450,400,0,0,0,1,0,0,0,0)
End
Test "Text, Times Roman 16, 90"
Func GDIExtTextOutTest
DBase 28 None
Font Times-New-Roman(16,0,900,900,400,0,0,0,1,0,0,0,0)
End
End
Group ""
Count 100
DArea MinAveMax(1000,5000,10000,50)
DHeight MinAveMax(50,75,100,20)
SArea MinAveMax(1000,5000,10000,40)
SHeight MinAveMax(50,75,100,30)
ROP Empirical(204/1)
Test "BltDIBits, 1 bpp, SRCCOPY"
Func GDIBltDIBitsTest
DBase 29 None
Image DIB1
End
Test "BltDIBits, 4 bpp, SRCCOPY"
Func GDIBltDIBitsTest
DBase 30 None
Image DIB4
End
Test "BltDIBits, 8 bpp, SRCCOPY"
Func GDIBltDIBitsTest
DBase 31 None
Image DIB8
End
Test "BltDIBits, 24 bpp, SRCCOPY"
Func GDIBltDIBitsTest
DBase 32 None
Image DIB8
Count 50
Bits 24
End
Test "SetDIBitsToDevice, 1 bpp"
Func GDISetDIBitsToDeviceTest
DBase 33 None
Image DIB1
End
Test "SetDIBitsToDevice, 4 bpp"
Func GDISetDIBitsToDeviceTest
DBase 34 None
Image DIB4
End
Test "SetDIBitsToDevice, 8 bpp"
Func GDISetDIBitsToDeviceTest
DBase 35 None
Image DIB8
End
Test "SetDIBitsToDevice, 24 bpp"
Func GDISetDIBitsToDeviceTest
DBase 36 None
Image DIB8
Count 50
Bits 24
End
Test "SetDIBitsBlt, 1 bpp"
Func GDISetDIBitsBltTest
DBase 37 None
Image DIB1
End
Test "SetDIBitsBlt, 4 bpp"
Func GDISetDIBitsBltTest
DBase 38 None
Image DIB4
End
Test "SetDIBitsBlt, 8 bpp"
Func GDISetDIBitsBltTest
DBase 39 None
Image DIB8
End
Test "SetDIBitsBlt, 24 bpp"
Func GDISetDIBitsBltTest
DBase 40 None
Image DIB8
Count 50
Bits 24
End
Test "StretchDIBits, 1 bpp, SRCCOPY"
Func GDIStretchDIBitsTest
DBase 41 None
Image DIB1
End
Test "StretchDIBits, 4 bpp, SRCCOPY"
Func GDIStretchDIBitsTest
DBase 42 None
Image DIB4
End
Test "StretchDIBits, 8 bpp, SRCCOPY"
Func GDIStretchDIBitsTest
DBase 43 None
Image DIB8
End
Test "StretchDIBits, 24 bpp, SRCCOPY"
Func GDIStretchDIBitsTest
DBase 44 None
Image DIB8
Count 20
Bits 24
End
End
Test "MoveTo"
Func GDIMoveToTest
DBase 45 None
Count 1000
End
Test "MoveToEx"
Func GDIMoveToExTest
DBase 46 None
Count 1000
End
Test "GetNearestColor"
Func GDIGetNearestColorTest
DBase 47 None
Count 1000
End
Test "ExtFloodFill, Border"
Func GDIExtFloodFillBorderTest
DBase 48 None
Count 100
Areas 10
Width 20
End
Test "ExtFloodFill, Surface"
Func GDIExtFloodFillSurfaceTest
DBase 49 None
Count 100
Areas 10
Width 20
End
Test "FloodFill"
Func GDIFloodFillTest
DBase 50 None
Count 100
Areas 10
Width 20
End
Group "" ? "User Supplied Bitmap"
Count 20
"Bitmap Path" ? ""
Test "SetDIBitsToDevice, User Supplied Bitmap"
Func GDISetDIBitsToDeviceTest
DBase 51 None
DArea Maximum
End
Test "SetDIBitsBlt, User Supplied Bitmap"
Func GDISetDIBitsBltTest
DBase 52 None
End
Test "BltDIBits, SRCCOPY, User Supplied Bitmap"
Func GDIBltDIBitsTest
DBase 53 None
ROP Empirical(204/1) // SRCCOPY
DArea Maximum
End
Test "StretchDIBits, SRCCOPY, User Supplied Bitmap"
Func GDIStretchDIBitsTest
DBase 54 None
ROP Empirical(204/1) // SRCCOPY
DArea Maximum(2) // stretch x2
SArea Maximum
StrMode Empirical(3/1)
End
End
End
Group "SToS"
Src Screen
Group ""
Count 256
DArea MinAveMax(1000,5000,10000,50)
DHeight MinAveMax(50,75,100,20)
SArea MinAveMax(1000,5000,10000,40)
SHeight MinAveMax(50,75,100,30)
Group ""
Test "BitBlt, SRCCOPY"
Func GDIBitBltTest
DBase 55 None
ROP Empirical(204/1)
End
Test "BitBlt, All ROPs"
Func GDIBitBltTest
DBase 56 None
ROP Uniform(0,255,256)
End
Test "StretchBlt, SRCCOPY"
Func GDIStretchBltTest
DBase 57 None
ROP Empirical(204/1)
End
Test "StretchBlt, All ROPs"
Func GDIStretchBltTest
DBase 58 None
ROP Uniform(0,255,256)
End
End
End
End
Group "MToS"
Src Mono(400,95)
Group ""
Count 256
DArea MinAveMax(1000,5000,10000,50)
DHeight MinAveMax(50,75,100,20)
SArea MinAveMax(1000,5000,10000,40)
SHeight MinAveMax(50,75,100,30)
Group ""
Test "BitBlt, SRCCOPY"
Func GDIBitBltTest
DBase 59 None
ROP Empirical(204/1)
End
Test "BitBlt, All ROPs"
Func GDIBitBltTest
DBase 60 None
ROP Uniform(0,255,256)
End
Test "StretchBlt, SRCCOPY"
Func GDIStretchBltTest
DBase 61 None
ROP Empirical(204/1)
End
Test "StretchBlt, All ROPs"
Func GDIStretchBltTest
DBase 62 None
ROP Uniform(0,255,256)
End
End
End
End
Group "CToS"
Src Color(400,90)
Group ""
Count 256
DArea MinAveMax(1000,5000,10000,50)
DHeight MinAveMax(50,75,100,20)
SArea MinAveMax(1000,5000,10000,40)
SHeight MinAveMax(50,75,100,30)
Group ""
Test "BitBlt, SRCCOPY"
Func GDIBitBltTest
DBase 63 None
ROP Empirical(204/1)
End
Test "BitBlt, All ROPs"
Func GDIBitBltTest
DBase 64 None
ROP Uniform(0,255,256)
End
Test "StretchBlt, SRCCOPY"
Func GDIStretchBltTest
DBase 65 None
ROP Empirical(204/1)
End
Test "StretchBlt, All ROPs"
Func GDIStretchBltTest
DBase 66 None
ROP Uniform(0,255,256)
End
End
End
End
End
Group "USER"
Group "S"
Group ""
Area MinAveMax(1000,5000,10000,50)
Height MinAveMax(50,75,100,20)
Count 256
Test "FillRect"
Func GDIFillRectTest
DBase 67 None
End
Test "InvertRect"
Func GDIInvertRectTest
DBase 68 None
End
End
Group ""
Height MinAveMax(10,75,115,50)
Width MinAveMax(10,75,150,30)
Count 250
Test "FrameRect"
Func GDIFrameRectTest
DBase 69 None
End
Test "DrawFocusRect"
Func GDIDrawFocusRectTest
DBase 70 None
End
End
Group ""
Count 200
Font Times-New-Roman(16)
Test "DrawText, Times Roman 16"
Func GDIDrawTextTest
DBase 71 None
End
Test "GrayString, Times Roman 16"
Func GDIGrayStringTest
DBase 72 None
End
Test "TabbedTextOut, Times Roman 16"
Func GDITabbedTextOutTest
DBase 73 None
End
End
Test "ScrollDC"
Func GDIScrollDCTest
DBase 74 None
Count 100
Area MinAveMax(10000,100000,150000,20)
Height Uniform(100,300,400,20)
Vertical Uniform(-100,100,20)
Horizontal Uniform(-100,100,20)
End
Test "DrawIcon"
Func GDIDrawIconTest
DBase 75 None
Count 1000
End
End
End
End
Group "M" // Drawing Surface is Mono Bitmap
Surface Mono(400,95) // Size from MBMAP
ChangePen 59
ChangeBrush 28
ChangeBkColor 5
ChangeBkMode 182
ChangeColor 50
ChangeTextColor 354
ChangeStrMode 7
ChangePolyMode 49
ChangeROP2 857
Pen Empirical(0/4,0/1713)
Brush Empirical(0/1)
BkMode Empirical(1/254,2/37)
StrMode Empirical(1/1)
PolyMode Empirical(1/1)
ROP2Mode Empirical(7/5,13/23413)
End
Group "C" // Drawing Surface is Color Bitmap
Surface Color(400,90) // Size from CBMAP
ChangePen 213
ChangeBrush 1847
ChangeBkColor 492
ChangeBkMode 3282
ChangeTextColor 636
ChangeColor 50
ChangeStrMode 32
ChangePolyMode 29455
ChangeROP2 64620
Pen Empirical(0/647,16/973,22/194,0/3592)
Brush Empirical(19/58,21/58,3/16,5/17,0/6778,0/447)
BkMode Empirical(1/665,2/232)
StrMode Empirical(1/143,3/5)
PolyMode Empirical(1/67001,2/10)
ROP2Mode Empirical(13/1)
End
End
End
Suite "GDI/USER Inspection Tests"
"GDI/S/Arc, Circular, Partial"
"GDI/S/Arc, Elliptical, Partial"
"GDI/S/Arc, Circular, Complete"
"GDI/S/Arc, Elliptical, Complete"
"GDI/S/Chord, Circular"
"GDI/S/Chord, Elliptical"
"GDI/S/Circle"
"GDI/S/Ellipse"
"GDI/S/Pie, Circular"
"GDI/S/Pie, Elliptical"
"GDI/S/Line, Horizontal"
"GDI/S/Line, Vertical"
"GDI/S/Line, Diagonal"
"GDI/S/Polygon, Many-sides"
"GDI/S/Polygon, Few-sides"
"GDI/S/Polygon, Triangle"
"GDI/S/Polygon, Trapezoid"
"GDI/S/InvertRgn"
"GDI/S/PaintRgn"
"GDI/S/FillRgn"
"GDI/S/PatBlt, PATCOPY"
"GDI/S/PatBlt, WHITENESS"
"GDI/S/PatBlt, DESTINVERT"
"GDI/S/PatBlt, All ROPs"
"GDI/S/FrameRgn"
"GDI/S/Text, Times Roman 16"
"GDI/S/Text, Times Roman 16, 45"
"GDI/S/Text, Times Roman 16, 90"
"GDI/S/BltDIBits, 1 bpp, SRCCOPY"
"GDI/S/BltDIBits, 4 bpp, SRCCOPY"
"GDI/S/BltDIBits, 8 bpp, SRCCOPY"
"GDI/S/BltDIBits, 24 bpp, SRCCOPY"
"GDI/S/SetDIBitsToDevice, 1 bpp"
"GDI/S/SetDIBitsToDevice, 4 bpp"
"GDI/S/SetDIBitsToDevice, 8 bpp"
"GDI/S/SetDIBitsToDevice, 24 bpp"
"GDI/S/SetDIBitsBlt, 1 bpp"
"GDI/S/SetDIBitsBlt, 4 bpp"
"GDI/S/SetDIBitsBlt, 8 bpp"
"GDI/S/SetDIBitsBlt, 24 bpp"
"GDI/S/StretchDIBits, 1 bpp, SRCCOPY"
"GDI/S/StretchDIBits, 4 bpp, SRCCOPY"
"GDI/S/StretchDIBits, 8 bpp, SRCCOPY"
"GDI/S/StretchDIBits, 24 bpp, SRCCOPY"
"GDI/S/MoveTo"
"GDI/S/MoveToEx"
"GDI/S/GetNearestColor"
"GDI/S/ExtFloodFill, Border"
"GDI/S/ExtFloodFill, Surface"
"GDI/S/FloodFill"
"GDI/SToS/BitBlt, SRCCOPY"
"GDI/SToS/BitBlt, All ROPs"
"GDI/SToS/StretchBlt, SRCCOPY"
"GDI/SToS/StretchBlt, All ROPs"
"GDI/MToS/BitBlt, SRCCOPY"
"GDI/MToS/BitBlt, All ROPs"
"GDI/MToS/StretchBlt, SRCCOPY"
"GDI/MToS/StretchBlt, All ROPs"
"GDI/CToS/BitBlt, SRCCOPY"
"GDI/CToS/BitBlt, All ROPs"
"GDI/CToS/StretchBlt, SRCCOPY"
"GDI/CToS/StretchBlt, All ROPs"
"USER/S/FillRect"
"USER/S/InvertRect"
"USER/S/FrameRect"
"USER/S/DrawFocusRect"
"USER/S/DrawText, Times Roman 16"
"USER/S/GrayString, Times Roman 16"
"USER/S/TabbedTextOut, Times Roman 16"
"USER/S/ScrollDC"
"USER/S/DrawIcon"
End